蟻本 2-1 Lake Counting
code: python
n = int(input())
m = int(input())
for i in range(n):
def dfs(x, y):
# 今いるところを.に置き換える
# 移動する8方向をループ
for dx in range(-1, 2):
for dy in range(-1, 2):
# x方向にdx y方向にdy 移動した場所を(nx, ny)とする
nx, ny = x + dx, y + dy
# nxとnyが庭の範囲内かどうかとfieldnxnyが水溜りかどうかを判定 if (0 <= nx and nx < n and 0 <= ny and ny < m and fieldnxny == 'W'): dfs(nx, ny)
res = 0
for i in range(n):
for j in range(m):
# 制御が戻ってきたときにWが残っているならそこからdfsをはじめる
dfs(i, j)
res += 1
print(res)
# W........WW.
# .WWW.....WWW
# ....WW...WW.
# .........WW.
# .........W..
# ..W......W..
# .W.W.....WW.
# W.W.W.....W.
# .W.W......W.
# ..W.......W.
テーマ